{"componentChunkName":"component---src-templates-blog-post-js","path":"/React-Redux /","webpackCompilationHash":"fbb20c27e610daab547e","result":{"data":{"site":{"siteMetadata":{"title":"Articles","author":"Aman-Sharma"}},"markdownRemark":{"id":"2b84bba7-bde4-5449-bb3c-906339ffa190","excerpt":"Article on Redux Redux is Basically a State Management Tool Used For The Management Of State\nThe Main Things Which We Used In Redux Are :- 1.Store\n2.Reducers…","html":"<h2>Article on Redux</h2>\n<p>Redux is Basically a State Management Tool Used For The Management Of State\nThe Main Things Which We Used In Redux Are :-</p>\n<p>1.Store\n2.Reducers\n3.Actions\n4.Methods</p>\n<p><u>Store:-</u> The Store Is Place Where We Kept Our State.</p>\n<p><u>Reducers:-</u> The Reducer Is a Pure Function Which By Default Takes Two Parameters In It\nFirst Is State Which We Want To Update And Second The Action.</p>\n<p><u>Action:-</u> Action Is an Object Which Is The Second Parameter Of The Reducer Function It Is Having The Type Key In Itself.</p>\n<p><u>Methods:-</u> Methods Are The Pre-defined Functions Which Are Provided By The Store To Us\nBy Using The Methods We Can Easily Interact With State Management Process.</p>\n<p><u>Entire Work Flow Of The Redux:-</u>\nFirst Of All We Needed A Function Called Reducer Function Which Having Two Parameters in It\nOne Is State And Another One Is Action Object.</p>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\"><span class=\"token keyword\">function</span> <span class=\"token function\">reducer</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">state<span class=\"token punctuation\">,</span>action</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n<span class=\"token keyword\">if</span><span class=\"token punctuation\">(</span>conditional<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\nUpdated State\n<span class=\"token punctuation\">}</span>\nEsle <span class=\"token punctuation\">{</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>Now Make a Store And Put The Reducer Function In it</p>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\"><span class=\"token keyword\">import</span> <span class=\"token punctuation\">{</span> createStore <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"redux\"</span>\n\n<span class=\"token keyword\">const</span> store <span class=\"token operator\">=</span> <span class=\"token function\">createStore</span><span class=\"token punctuation\">(</span>reducer<span class=\"token punctuation\">)</span></code></pre></div>\n<p>The Store Now Provides Some Of The Methods Which Are Given Below:-</p>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\"><span class=\"token number\">1.</span>store<span class=\"token punctuation\">.</span><span class=\"token function\">dispatch</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n<span class=\"token number\">2.</span>store<span class=\"token punctuation\">.</span><span class=\"token function\">subscribe</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n<span class=\"token number\">3</span> store<span class=\"token punctuation\">.</span><span class=\"token function\">getState</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span></code></pre></div>\n<p>These Methods Are Explain Below:</p>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\"><span class=\"token number\">1</span> store<span class=\"token punctuation\">.</span><span class=\"token function\">dispatch</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">:</span><span class=\"token operator\">-</span>\nThe Store Dispatch Is Method To Interact With The Action Object Or Dispatching An Action<span class=\"token punctuation\">.</span>\n\n<span class=\"token number\">2.</span>store<span class=\"token punctuation\">.</span><span class=\"token function\">subscribe</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">:</span><span class=\"token operator\">-</span>\nThis Method is providing The Whole Information <span class=\"token keyword\">if</span> There Is Any change In The Store\n\n<span class=\"token number\">3</span> store<span class=\"token punctuation\">.</span><span class=\"token function\">getState</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">:</span><span class=\"token operator\">-</span>\nThis Method Is Generally Used For Getting The Updated State<span class=\"token punctuation\">.</span></code></pre></div>\n<p><u>Explanation Of The React -Redux</u></p>\n<p>When We Are Using The React With Redux Then We Use The React-Redux Package.\nNow We Generally Used The React-Redux Package Because We Having The Store\nWhich Is Called The Central Store Now When We Provide Access To All The Components\nOf Our Parent Component In React Application Then We Need React-Redux</p>\n<h2>Work-Flow Of React-Redux</h2>\n<p>Step 1.:-\nImporting The Provider From React-Redux By</p>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\"><span class=\"token keyword\">import</span> <span class=\"token punctuation\">{</span> Provider <span class=\"token punctuation\">}</span> <span class=\"token keyword\">from</span> <span class=\"token string\">\"react-redux\"</span></code></pre></div>\n<p>We Use That Provider In The Main Parent Component Which Gives Access Of The Store To The Children Components Presented In It Example Given Below</p>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\">ReactDOM<span class=\"token punctuation\">.</span><span class=\"token function\">render</span><span class=\"token punctuation\">(</span>\n  <span class=\"token operator\">&lt;</span>Provider store<span class=\"token operator\">=</span><span class=\"token punctuation\">{</span>Store<span class=\"token punctuation\">}</span><span class=\"token operator\">></span>\n    <span class=\"token operator\">&lt;</span>App <span class=\"token operator\">/</span><span class=\"token operator\">></span>\n  <span class=\"token operator\">&lt;</span><span class=\"token operator\">/</span>Provider<span class=\"token operator\">></span><span class=\"token punctuation\">,</span>\n  document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"root\"</span><span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">)</span></code></pre></div>","frontmatter":{"title":"React Redux","date":"December 02, 2019","description":" Explanations of React-Redux "}}},"pageContext":{"isCreatedByStatefulCreatePages":false,"slug":"/React-Redux /","previous":{"fields":{"slug":"/VariableDeclartion in Js/"},"frontmatter":{"title":"Es6 Variable Declaration"}},"next":{"fields":{"slug":"/Authentication and Authorization/"},"frontmatter":{"title":"Authentication and Authorization"}}}}}